package com.woniuxy.shiro;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.shiro.authc.AuthenticationToken;

/**@// :自定义的类,将token当做属性，我们使用注解给他生成了get，set，无参构造有参构造,在我们的util类中有方法生成token这个字符串
 * --@；然后将生成的token字符串封装到这个类中，相当于给token包装了一层，这个token实体类的两个方法全都是返回的token
 *  我们这个自定义类需要实现 AuthenticationToken这个接口，否则我们这个自定义的类无法被关联起来替代UsernamePasswordToken的一个 实体类！用于封装token！
 *  获取校长getPrincipal，之前在UsernamePasswordToken中的时候，拿到的是username；
 *  现在基于JWT认证的时候，将直接获取token！为了避免token被篡改和过期失效！
 *
 * @Author：向天浩
 * @Date：2022/2/23 12:16
 * @Description :
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class MyJwtToken implements AuthenticationToken {
    private String token;


    @Override
    public Object getPrincipal() {
        return token;
    }

    @Override
    public Object getCredentials() {
        return token;
    }
}
